package com.nextel.project.devolucion.mvc;

import com.nextel.project.devolucion.ControlDevolucion;
import com.nextel.ui.OImage;
import com.nextel.ui.OLabel;
import com.nextel.ui.OSoftKey;
import com.nextel.ui.OUILook;
import pe.com.nextel.idioma.IdiomaManager;
import pe.com.nextel.main.MVCAction;


/**
// *
 * @author eespinoza
 */
public class MVCDevolucionFin extends MVCAction {

    //private Form form = null;
    private OSoftKey cmdFin,cmdAtras, cmdNuevo;
    private OLabel str;
    private boolean flagForm; // para que no presione dos veces al momento de buscar

//    protected Displayable getScreen() {
//        return form;
//    }
//
//    protected void destroy() {
//        form.deleteAll();
//    }

    protected void createView()  {
        
        cmdFin = new OSoftKey(IdiomaManager.getInstance().getMensaje(IdiomaManager.JAVA_SI));//"Si"
        cmdAtras = new OSoftKey(IdiomaManager.getInstance().getMensaje(IdiomaManager.JAVA_NO));//"No"
        
        
        formulario.setTitle(IdiomaManager.getInstance().getMensaje(IdiomaManager.JAVA_FINALIZAR), OUILook.PLAIN_SMALL_TITLE);//"Finalizar"
        

        formulario.addSoftKey(cmdFin);
        
        formulario.addSoftKey(cmdAtras);
        flagForm = true;
    }

    protected void createItems() {
        
        StringBuffer stf = new StringBuffer();
        stf.append(IdiomaManager.getInstance().getMensaje(IdiomaManager.JAVA_CONFIRMAR_FINALIZAR_DEVOLUCION)).append('\n');//"Esta seguro de finalizar \nla devolución?"
        stf.append('\n');
        stf.append("#"+IdiomaManager.getInstance().getMensaje(IdiomaManager.JAVA_ITEMS_DEVOL)+": ").append( ControlDevolucion.getInstance().currentDevolucion.getLstDevolucionDetalle().size() ).append('\n');//Items Devol
        

        str = new OLabel( stf.toString(),OUILook.PLAIN_SMALL_TEXT);
        
        try{
        formulario.add(new OImage("/res/confirmacion.PNG"));
        formulario.add(str);
        flagForm = true;
        }catch(Exception e)       {

        }

        
    }

    public void performAction(OSoftKey c) {
        if (flagForm) {
            flagForm = false;
            if (c == cmdFin) {
                ControlDevolucion.getInstance().grabarDevolucion();
            }  
            else if (c == cmdNuevo) {
                ControlDevolucion.getInstance().setCurrent(ControlDevolucion.getInstance().mvcProductoBusqueda);
            }
            else if (c == cmdAtras) {
                ControlDevolucion.getInstance().setCurrent(ControlDevolucion.getInstance().mvcResumenDevolucion);
                //ControlDevolucion.getInstance().setCurrent(ControlDevolucion.getInstance().mvcDevolucionLista);
            }
            destroy();
        }
    }
}
